home *** CD-ROM | disk | FTP | other *** search
/ Softdisk Supreme / Softdisk Supreme.iso / pc / DSK Files / 0-49 / SD023d.dsk / AMPER SCREEN DEMO.bas < prev    next >
BASIC Source File  |  2003-06-12  |  9KB  |  63 lines

  1. 1  REM "<CTRL-M><CTRL-M>      -=< AMPER SCREEN DEMO >=-<CTRL-M><CTRL-M>      BY C.R.J.   DATE:07/13/83<CTRL-M><CTRL-M>
  2. 10  CALL  PEEK(175) + PEEK(176) *256 -46
  3. 20  SPEED= 255: NORMAL : PRINT  CHR$(21);: PR# 0: TEXT : HOME :M$ =  CHR$(13):T$ = M$ +M$:FS =  -16302: ONERR  GOTO 60
  4. 30  & "RESET ERR",253
  5. 40  GOTO 90
  6. 50  TEXT : NORMAL : VTAB 24: HTAB 10: PRINT "ONE MOMENT PLEASE...";: SPEED= 254: VTAB 20: & "RESET BOOT": & "RUN","DEMO MENU"
  7. 60  & "ERR",N,L: IF N = 255  OR N = 253  THEN 50: REM "IF CTRL-C OR RESET
  8. 70  VTAB 23: HTAB 1: INVERSE : & "ERR MSSG": NORMAL : PRINT "  PRESS <RETURN>";: & "GET"A$ IF  CHR$(13);: HTAB 1: CALL  -958: GOTO 50
  9. 90  TEXT : HOME :M$ =  CHR$(13):T$ = M$ +M$:SP$ = "                                        ":Q$ =  CHR$(34)
  10. 100  INVERSE : VTAB 2: HTAB 9: PRINT "                      ": HTAB 9: PRINT "     AMPER SCREEN     ": HTAB 9: PRINT "                      ": NORMAL : & "WAIT",1
  11. 110  FOR X = 1 TO 11: READ P,D: & "BEEP",P,D *1.25: NEXT X: & "WAIT",1.5
  12. 120  DATA 47,5,0,5,37,15,0,5,47,5,0,10,63,5,0,5,37,15,0,5,31,7: REM " 1(C) 3(E) 1(C) 1(LO G) 3(E) 1(HI G)
  13. 150  PRINT M$:A$ = "AMPER-SCREEN IS AN EXTENSIVE COLLECTION OF SCREEN-RELATED PROGRAMMING UTILITIES, DEDICATED TO TEXT DISPLAY AND INPUT FOR THE APPLE II AND IIE.": & "PRT",A$: GOSUB 8400: & "WAIT",8
  14. 160  PRINT M$:A$ = "THE AMPER-SCREEN PACKAGE IS MADE UP OF TWO NOTABLE PARTS:": & "PRT",A$: GOSUB 8500: & "WAIT",4: PRINT M$" 1.  THE SCREEN GENERATOR AND SCREEN"M$"     PROCESSOR UTILITIES.": GOSUB 8400: & "WAIT",4
  15. 170  PRINT M$" 2.  AN ASSORTMENT OF ROUTINES TO DO"M$"     SPECIAL FORMS OF INPUT AND OUTPUT"M$"     ON YOUR APPLE.": GOSUB 8400: & "WAIT",4
  16. 200  HOME : HTAB 14: INVERSE : PRINT "AMPER SCREEN"T$: NORMAL : GOSUB 8600
  17. 205 A$ = "THE SCREEN GENERATOR/PROCESSOR ALLOWS YOU TO DESIGN AN ENTIRE INPUT OR OUTPUT SCREEN FORMAT.  THEN YOU CAN HAVE THE ENTIRE SCREEN EXECUTED AS ONE OR TWO STATEMENTS.": & "PRT",A$: GOSUB 8500
  18. 210  & "WAIT",10: PRINT M$:A$ = "THIS IS USEFUL FOR REPORTS, MENUS, DATA ENTRY AND MORE.": & "PRT",A$: GOSUB 8500: & "WAIT",4
  19. 220  PRINT T$:A$ = "LET'S TAKE A LOOK AT WHAT ITS LIKE TO USE THE SCREEN GENERATOR/PROCESSOR...": & "PRT",A$: GOSUB 8500: & "WAIT",4
  20. 300  GOSUB 9000: GOSUB 8600: & "WAIT",4:U = 20:D = 24:L = 10:R = 40: GOSUB 8100: PRINT "THIS IS THE SCREEN GENERATOR.YOU CAN USE IT TO DESIGN     SCREENS FOR YOUR PROGRAM.";: GOSUB 8300: GOSUB 8500: & "WAIT",10
  21. 310  GOSUB 9100: GOSUB 8600: & "WAIT",4:U = 19:L = 16:D = 23: GOSUB 8100: PRINT "THIS IS WHAT A FINISHEDSCREEN MIGHT LOOK LIKE WHEN YOU USE IT.";: GOSUB 8300: GOSUB 8500: & "WAIT",10
  22. 320  GOSUB 9200: & "WAIT",4:U = 19:L = 16:D = 23: GOSUB 8100: PRINT "HERE'S WHAT PART OF A  PROGRAM USING A SCREEN MIGHT LOOK LIKE.";: GOSUB 8300: GOSUB 8500: & "WAIT",10
  23. 400  HOME : GOSUB 8600: HTAB 14: INVERSE : PRINT "AMPER SCREEN": NORMAL : PRINT M$:A$ = "HERE'S WHAT A FEW OF THE OTHER ROUTINES ON THE DISK CAN DO:": & "PRT",A$: & "WAIT",4
  24. 410  INVERSE : PRINT T$"4 WAY SCROLLING": NORMAL :A$ = "IS A ROUTINE THAT PERMITS FAST, FOUR WAY SCROLLING OF THE APPLE'S TEXT OR LOW RESOLUTION GRAPHICS SCREEN.": & "PRT",A$: GOSUB 8500: & "WAIT",8: PRINT M$"HERE'S A SMALL SAMPLE...": GOSUB 8400: & "WAIT",3
  25. 420 S$ = "RDRDRDLLLUUULLLDRDRDR": FOR N = 1 TO  LEN(S$): FOR X = 1 TO 8: & "SCROLL 4X", MID$ (S$,N,1),0: NEXT X: & "BEEP",28,2: & "WAIT",.2: NEXT N: & "WAIT",8
  26. 500 W = 24: GOSUB 8700: GOSUB 8600: INVERSE : PRINT M$"INPUT USING": NORMAL :A$ = "IS A SPECIAL FORMATTED INPUT ROUTINE THAT ALLOWS CHECKING FOR ALLOWABLE CHARACTERS.": & "PRT",A$: & "WAIT",10
  27. 550 W = 14: GOSUB 8700: INVERSE : PRINT M$"EDIT STRING": NORMAL :A$ = "IS A SPECIAL STRING INPUT ROUTINE THAT WILL ALLOW THE USER TO USE CONTROL CODES TO EDIT HIS RESPONSE.": & "PRT",A$: GOSUB 8500: & "WAIT",8
  28. 560  PRINT :A$ = "IT ALSO LETS THE USER TYPE BOTH UPPER AND LOWER CASE, AND ENTER SPECIAL PUNCTUATION!": & "PRT",A$: GOSUB 8400: & "WAIT",10
  29. 600 W = 24: GOSUB 8700: GOSUB 8600: INVERSE : PRINT M$"TEXT FORMATTER": NORMAL :A$ = "WILL PRINT TEXT IN A LEFT, RIGHT, CENTER, OR FILL JUSTIFIED FORMAT.": & "PRT",A$: & "WAIT",8
  30. 610  PRINT T$M$"THIS HAS BEEN LEFT JUSTIFIED": GOSUB 8400: & "WAIT",2
  31. 620  PRINT : HTAB 12: PRINT "THIS HAS BEEN RIGHT JUSTIFIED": GOSUB 8400: & "WAIT",2
  32. 630  HTAB 6: PRINT "THIS HAS BEEN CENTER JUSTIFIED": GOSUB 8400: & "WAIT",2
  33. 640  PRINT T$"THIS IS SOME TEXT WHICH  HAS  BEEN  FILLJUSTIFIED,  SO  THAT BOTH OF THE MARGINSARE SMOOTH.": GOSUB 8400: & "WAIT",8
  34. 700 W = 24: GOSUB 8700: GOSUB 8600: INVERSE : PRINT M$"CURSOR MOUSE": NORMAL :A$ = "LETS THE USER SELECT ITEMS WITH A MOUSE INPUT DEVICE, JOYSTICK, OR GAME PADDLES.": & "PRT",A$: & "WAIT",8
  35. 710  PRINT :A$ = "HERE'S A LITTLE DEMONSTRATION...": & "PRT",A$: GOSUB 8500: & "WAIT",2: PRINT :A$ = "USE THE JOYSTICK OR PADDLES TO MOVE THE CURSOR TO A LETTER AND THEN PRESS ONE OF THE BUTTONS.": & "PRT",A$: GOSUB 8500: GOSUB 9300
  36. 750 P0 =  PDL(0): & "WAIT",.2:P1 =  PDL(1): VTAB 17: HTAB 15: FOR X = 1 TO 300: PRINT "_ " CHR$(8) CHR$(8)" " CHR$(8);: IF ( PDL(0) >P0 +20)  OR ( PDL(0) <P0 -20)  OR ( PDL(1) >P1 +20)  OR ( PDL(1) <P1 -20)  THEN  & "CURSOR MOUSE";A$: FOR X = 1 TO 30: READ N: NEXT X: GOTO 790
  37. 760  NEXT X: FOR X = 1 TO 30: READ N: VTAB  PEEK(37) +1 +(N = 3) -(N = 1): HTAB  PEEK(36) +1 +(N = 2) -(N = 4):C =  PEEK( PEEK(40) + PEEK(41) *256 + PEEK(36)): FOR W = 1 TO 20 +60 *(X = 30): PRINT "_" CHR$(8) CHR$(C -128) CHR$(8);: NEXT W: NEXT X:A$ = "V"
  38. 770  DATA 4,4,4, 3,4,4, 3,4,1, 4,4,1,1,4, 2,2,2,2,2, 1,2,2,2, 3,2,2, 3,2,2,3
  39. 790  & "WINDOW",1,24,1,40: VTAB 23: HTAB 12: PRINT "YOU SELECTED '"A$"' !": GOSUB 8400: & "WAIT",10
  40. 900  HOME : GOSUB 8600: HTAB 14: INVERSE : PRINT "AMPER SCREEN": NORMAL : PRINT :A$ = "THE FOLLOWING ROUTINES ARE INCLUDED WITH 'AMPER SCREEN':": & "PRT",A$: PRINT : & "WAIT",5
  41. 910  FOR X = 1 TO 20:P = X -2 * INT((X -1)/2) -1: HTAB P *20 +1: READ A$: PRINT A$ MID$ ( CHR$(13),1,P = 1);: & "BEEP",15,1: NEXT X
  42. 920  & "WAIT",4: PRINT M$:A$ = "...IN ADDITION TO THE SCREEN GENERATOR AND PROCESSOR.": & "PRT",A$: & "BEEP",23,5: & "BEEP",0,5: & "BEEP",23,70: & "WAIT",15: GOSUB 8400
  43. 930  GOTO 50
  44. 950  DATA "'SCREEN' ROUTINES","INPUT USING","SPEED CONTROL","CTRL CHR DISPLAY","EDIT STRING","PRINT PAUSE","LOWER CASE INPUT","NUMBER FORMAT","4 WAY SCROLLING","KEYBOARD CLICK","LINE SCROLLER","MUSICAL KEYBOARD","PRINTER CONTROL"
  45. 960  DATA "JUSTIFY STRINGS","SCREEN DUMP","PRINT REPEAT","CLEAR SCREEN","MEMORY DUMP","MEMORY DISASSEMBLE","CURSOR MOUSE ROUTINE"
  46. 8000 H =  PEEK(36) +1: FOR X = 0 TO  LEN(A$): HTAB H: PRINT  MID$ (A$,1,X);: & "BEEP",255 *  NOT   NOT X,1: INVERSE : PRINT  MID$ (" ",1,X < > LEN(A$));: NORMAL : & "WAIT",.1: NEXT X: HTAB H + LEN(A$): RETURN 
  47. 8100  TEXT : & "WINDOW",U,D,L,R: INVERSE : FOR V = U TO D: VTAB V: HTAB 1: PRINT  MID$ (SP$,1,R -(D = V) -L +1);: NEXT V: POKE ( PEEK(40) + PEEK(41) *256) + PEEK(36),32: & "WINDOW",U +1,D -1,L +1,R -1: VTAB U +1: HTAB 1: RETURN 
  48. 8200  TEXT : & "WINDOW",U +1,D -1,L +1,R -1: INVERSE : VTAB V2: HTAB H2: RETURN 
  49. 8300 V2 =  PEEK(37) +1:H2 =  PEEK(36) +1: CALL  -1220: VTAB V2: NORMAL : RETURN 
  50. 8400  & "BEEP",23,5: RETURN 
  51. 8500  & "BEEP",33,5: RETURN 
  52. 8600  & "BEEP",23,5: & "BEEP",0,5: & "BEEP",33,5: RETURN 
  53. 8700  FOR X1 = 1 TO W: & "SCROLL 4X","D": FOR X2 = 1 TO 5: NEXT X2: NEXT X1: VTAB 1: HTAB 1: RETURN 
  54. 9000  HOME :P$ = "......................................": PRINT " "P$M$".";: FOR X = 1 TO 17: HTAB 40: PRINT "..";: NEXT X: HTAB 40: PRINT ".";" "P$: VTAB 3: HTAB 6: PRINT "SCREEN GENERATOR FUNCTIONS"M$: & "WINDOW",1,24,8: VTAB 5: INVERSE : FOR X = 1 TO 6: PRINT " "M$: NEXT X
  55. 9010  NORMAL : & "WINDOW"1,24,10: VTAB 5: HTAB 1: PRINT "CREATE NEW SCREEN."T$"LOAD SCREEN FROM DISK."T$"SAVE SCREEN ONTO DISK."T$"RETURN TO EDIT MODE."T$"LIST CATALOG."T$"QUIT.": & "WINDOW",1,24,1: & "WINDOW",1,24,6: VTAB 17: HTAB 1
  56. 9020  PRINT "TO SELECT A FUNCTION MOVE THE BOX"M$"TO THE APPROPRIATE LINE AND THEN"M$"PRESS THE 'ESC' KEY.": & "WINDOW",1,24,1: RETURN 
  57. 9100  HOME :UL$ = "____________________________": PRINT "--< REALLY SUPER ACCOUNTING PROGRAM >--"T$: HTAB 8: PRINT "PLEASE FILL IN THIS FORM": HTAB 8: PRINT "FOR THE NEW ACCOUNT:"T$M$"ACCOUNT NUMBER: " LEFT$(UL$,8)T$"ACCOUNT TITLE: " LEFT$(UL$,22)
  58. 9110  PRINT M$"ADDRESS: " LEFT$(UL$,28)T$"TERMS: " LEFT$(UL$,15)T$"BEGINNING BALANCE: " LEFT$(UL$,12): VTAB 8: HTAB 17: INVERSE : PRINT "_": NORMAL : RETURN 
  59. 9200  HOME : PRINT T$"]";: INVERSE : PRINT " " CHR$(8);: NORMAL : GOSUB 8600: & "WAIT",2:A$ = "LIST 9240,9250": GOSUB 8000: PRINT : LIST 9240,9250: PRINT M$"]";: INVERSE : PRINT " ": GOSUB 8400: RETURN 
  60. 9230  REM "THE FOLLOWING TWO LINES ARE FOR LISTING ONLY!<CTRL-J>
  61. 9240  & "SP", LOAD ,"ACCOUNT SCREEN"
  62. 9250  & "SP", READ ,AN,TL$,AD$,TM$,BA
  63. 9300  VTAB 14: HTAB 6: INVERSE : PRINT  LEFT$(SP$,29): FOR X = 1 TO 5: HTAB 6: PRINT " ";: HTAB 34: PRINT " ": NEXT X: HTAB 6: PRINT  LEFT$(SP$,29): NORMAL : VTAB 16: HTAB 8: PRINT "A B C D E F G H I J K L M"M$: HTAB 8: PRINT "N O P Q R S T U V W X Y Z": & "WINDOW",15,19,7,33: RETURN